package com.lkpstudy.rbac.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;

/**
 * 系统菜单
 * @TableName auth
 */
@TableName(value ="auth")
@Data
public class Auth implements Serializable {
    /**
     * ID
     */
    @TableId(type = IdType.AUTO)
    private Long id;

    /**
     * 上级权限ID
     */
    private Long pid;

    /**
     * 下级权限数目
     */
    private Integer count_sub;

    /**
     * 前端菜单显示的排序
     */
    private Integer sort;

    /**
     * 前端菜单类型:0-顶部菜单；1-一级菜单；2-子菜单；3-页面资源；4-外联
     */
    private String type;

    /**
     * 前端菜单（路由）名称
     */
    private String name;

    /**
     * 前端菜单（路由）地址：user/page
     */
    private String path;

    /**
     * 前端菜单（路由）父级映射地址：user/page
     */
    private String redirect;

    /**
     * 前端菜单（路由）组件：components/icons/index
     */
    private String component;

    /**
     * 前端菜单（路由）图标
     */
    private String meta_icon;

    /**
     * 前端菜单（路由）标题
     */
    private String meta_title;

    /**
     * 前端菜单权限：user:page
     */
    private String permission;

    /**
     * 前端菜单是否是外链链接
     */
    private String href;

    /**
     * 前端菜单是否隐藏：1-删除；0-未删除
     */
    private Boolean is_hidden;

    /**
     * 后端controller映射的地址
     */
    private String uri;

    /**
     * 后端微服务模块名称
     */
    private String module;

    /**
     * 是否逻辑删除：1-删除；0-未删除
     */
    private Boolean is_deleted;

    /**
     * 创建者
     */
    private String create_by;

    /**
     * 更新者
     */
    private String update_by;

    /**
     * 创建日期
     */
    private Date create_time;

    /**
     * 更新时间
     */
    private Date update_time;

    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}